De acuerdo con la documentación de Laravel , es posible agregar un oyente que registrará todas las consultas SQL y registrará la duración de la consulta.
public function boot() { DB::listen(function ($query) { // $query->sql // $query->bindings $query->time }); }Mi problema es que no conozco la unidad de $query->time y no puedo encontrar esta información en la documentación. Al reproducir las consultas en el cliente Mysql cli, parece que el resultado devuelto está en decisegundos, lo que parece muy extraño. Por eso, creo que entendí mal algo y que el tiempo medido podría no representar lo que esperaba (el tiempo de respuesta de Mysql).
¿Cuál es la unidad de este elemento? ¿Existe una mejor documentación de Laravel que pueda explicar lo que se mide?
El parámetro que obtienes allí es de tipo
Illuminate/Base de datos/Eventos/Consulta ejecutada
De acuerdo a esto
https://laravel.com/api/8.x/Illuminate/Database/Events/QueryExecuted.html
el tiempo es "El número de milisegundos que tomó ejecutar la consulta".
se calcula usando la función de microtime , lo que obtienes es un valor de tiempo en milisegundos